home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / System / MRAC / Generate / g-tempo < prev   
Lisp/Scheme  |  1998-10-24  |  1KB  |  57 lines

  1. g-tempo seed range beat tempo length
  2.  
  3.  
  4. (setq tempo1
  5.       (g-tempo .23 '(4 11) '1/4 (permute '(32 44 72 88)) 120))
  6.  
  7. (first tempo1)
  8. => (3/2 1/1 3/2 7/4 2/1 9/4 2/1 5/4 3/2 2/1 3/2 11/4 9/4 2/1 5/2 9/4)
  9.  
  10. (second tempo1)
  11. => (32 44 72 88 32 44 88 72 32 72 44 88 32 72 88 44)
  12.  
  13. (setq tempo2
  14.       (g-tempo .23 '((4 7) (3 6)) '1/4
  15.                  '((32 44 72 88) (72 112)) '(60 60)))
  16.  
  17. (first tempo2)
  18. => (5/4 7/4 1/1 3/2 5/4 5/4 5/4 1/1 3/2 5/4 3/2 1/2
  19.     3/4 5/4 3/2 1/1 5/4 5/4 3/4 3/2 3/2 5/4 3/2 3/2)
  20.  
  21. (second tempo2)
  22. => (32 44 72 88 32 44 72 88 32 44 72 88 72
  23.     112 72 112 72 112 72 112 72 112 72 112)
  24.  
  25. SCORE:
  26.  
  27. (setq sym (g-cluster nil 's -12 12 '(4 5 7 9 3) '(6 5 7 8 4)))
  28. (setq len (g-tuplet nil 1 4 'd 'n '(4 4 4 4 4 4 4) '(5 3 4 5)))
  29. (setq tempo (g-tempo .23 '(3 5) '1/8 (permute '(32 44 72 88)) len))
  30. (setq tempo-zone (first tempo))
  31. (setq tempo-score (second tempo))
  32.  
  33. (def-symbol
  34.   inst (flatten sym))
  35.  
  36. (def-length
  37.   inst (flatten len))
  38.  
  39. (def-velocity
  40.   inst '60)
  41.  
  42. (def-zone
  43.   tempo tempo-zone 
  44.   inst (zone-tick (length-of inst)))
  45.  
  46. (def-channel
  47.   inst k2000i-1)
  48.  
  49. (def-program k2000p
  50.   default '(stereo-grand))
  51.  
  52. (def-tonality
  53.   default (activate-tonality (chromatic c 5)))
  54.  
  55. (def-tempo tempo-score)
  56.  
  57. (compile-instrument-p "ccl;output:" "test0" inst)